5
תגובות
trim ו strlen
פתח
Ben
,
היי.
אוכל לדעת למה הפונקציה ()trim אינה מורידה באמת את הרווחים ?
ולמה הפונקציה ()mb_strlen מחשבת אות כ 2 תווים ומספר כתו אחד בודד ?
חשבתי להשתמש במקום trim ב preg_replace בשביל להסיר את כל הרווחים במחרוזת, יש משהו יותר טוב ?
בכללי, אני רוצה לחשב את מספר התווים במחרוזת, רק את התווים לא כולל הרווחים, לכן אני מסיר את הרווחים ואז מחשב את התווים ומשום מה כלום לא עובד.
אוכל לדעת למה הפונקציה ()trim אינה מורידה באמת את הרווחים ?
ולמה הפונקציה ()mb_strlen מחשבת אות כ 2 תווים ומספר כתו אחד בודד ?
חשבתי להשתמש במקום trim ב preg_replace בשביל להסיר את כל הרווחים במחרוזת, יש משהו יותר טוב ?
בכללי, אני רוצה לחשב את מספר התווים במחרוזת, רק את התווים לא כולל הרווחים, לכן אני מסיר את הרווחים ואז מחשב את התווים ומשום מה כלום לא עובד.
5 תשובות
בקשר ל strlen, הסתדרתי. הייתי צריך להוסיף UTF-8 כפרמטר שני.
לאלה שהסתבכו ומצאו את השאלה הזו בתוצאות של גוגל:
echo mb_strlen("סתם משהו", "UTF-8");
כמובן שזה סופר גם את הרווחים, לכן התוצאה תיהיה 8.
בקשר ל trim, החלפתי את זה preg_replace. יותר שימושי, לא ?
אני לא רואה שום סיבה ש-trim לא יוריד רווחים לבנים מתחילת המחרוזת או מסופה. אתה יכול לתת את הקוד?
אל תשתמש ב-RegEx כשיש לך משהו אחר.
@OrelBeY, זה הקוד, הוא ממש פשוט האמת או שאולי יש משהו שאני לא מוסיף:
http://phpguide.co.il/phplive?code=685
From the documentation: trim — Strip whitespace (or other characters) from the beginning and end of a string